package com.canaan.business.domain.bill;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.canaan.common.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.canaan.common.annotation.Excel;
import com.canaan.common.core.domain.BaseEntity;

/**
 * 调拔入库单对象 wms_adjust_in_bill
 *
 * @author ruoyi
 * @date 2023-02-01
 */
@Data
@ApiModel(description = "wms_adjust_in_bill")
@TableName("wms_adjust_in_bill")
public class AdjustInBill extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** ID */
    @ApiModelProperty("${comment}")
    private Long id;

    /** 编号 */
    @Excel(name = "编号")
    @ApiModelProperty("编号")
    private String no;

    /** 需求总数量 */
    @Excel(name = "需求总数量")
    @ApiModelProperty("需求总数量")
    private Long totalQty;

    /** 收货数量 */
    @Excel(name = "收货数量")
    @ApiModelProperty("收货数量")
    private Long checkTotalQty;

    /** 单据状态 1新建 2进行中 3已完成 */
    @Excel(name = "单据状态 1新建 2进行中 3已完成")
    @ApiModelProperty("单据状态 1新建 2进行中 3已完成")
    private Integer status;

    /** 完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("完成时间")
    private Date completeTime;

    /** 地址 */
    @Excel(name = "地址")
    @ApiModelProperty("地址")
    private String address;

    /** 联系方式 */
    @Excel(name = "联系方式")
    @ApiModelProperty("联系方式")
    private String concat;

    /** 仓库 */
    @Excel(name = "仓库")
    @ApiModelProperty("仓库")
    private String stockCode;

    /** 货主 */
    @Excel(name = "货主")
    @ApiModelProperty("货主")
    private String owner;

    /** 库存状态 */
    @Excel(name = "库存状态")
    @ApiModelProperty("库存状态")
    private String stockStatus;

    /** 预计入库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "预计入库时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("预计入库时间")
    private Date arrivalDate;
    /** 是否短收 */
    @Excel(name = "是否短收")
    @ApiModelProperty("是否短收")
    private String shortMatch;

    /** 是否拆箱 */
    @Excel(name = "是否拆箱")
    @ApiModelProperty("是否拆箱")
    private String split;

    /** 是否删除：1是 0否 */
    @ApiModelProperty("删除")
    private String delFlag;

    /** 查询已完成数据 */
    @ApiModelProperty("查询完成数据")
    private String searchFinish;

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("no", getNo())
            .append("totalQty", getTotalQty())
            .append("status", getStatus())
            .append("completeTime", getCompleteTime())
            .append("address", getAddress())
            .append("concat", getConcat())
            .append("remark", getRemark())
            .append("stockCode", getStockCode())
            .append("owner", getOwner())
            .append("stockStatus", getStockStatus())
            .append("arrivalDate", getArrivalDate())
            .append("shortMatch", getShortMatch())
            .append("split", getSplit())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("createTime", getCreateTime())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
